<?php
class ErrorReporting extends CActiveRecord {
    
    public $id;
    public $partnerId;
    public $userId;
    public $email;
    public $login;
    public $text;
    
    public static function model($className = __CLASS__) {
        return parent::model($className);
    }

    public function tableName() {
        return 'error_reporting';
    }
    
    protected function beforeValidate() {
        if(!parent::beforeValidate()) return false;
        $this->attributes = $_POST[get_class($this)];
        if(Yii::app()->user->isGuest) $this->setScenario('unreg');
        return true;
    }

    public function rules() {
        return array(
            array('text', 'required', 'message' => '{attribute} не может быть пустым'),
            array('text, email, login', 'filter', 'filter'=>'strip_tags'),
            array('email', 'email', 'message'=>'Ошибка в email'),
            array('partnerId', 'safe'),
            array('email, login', 'required', 'message' => '{attribute} не может быть пустым', 'on'=>'unreg'),
        );
    }
    
    public function attributeLabels() {
        return array(
            'email'=>'Ваш email',
            'login'=>'Ваше имя',
            'text'=>'Текст сообщения'
        );
    }
    
    protected function beforeSave() {
        if(!Yii::app()->user->isGuest) 
            $this->userId = Yii::app()->user->getId();
        return parent::beforeSave();
    }
}
